Шаг 4. Выборочно откладываем изменения

Команда из прошлого шага позволяет отложить все отслеживаемые изменения. Но бывают ситуации, когда нужно отложить лишь часть изменений, и для этого есть специальная опция -p, или более развёрнуто --patch.

С этой опцией мы уже работали, когда выборочно добавляли изменения в индекс. В данном случае она работает точно таким же образом, но результат будет другим.

Давайте внесём два изменения. Во-первых, после закрывающего тега </main> создадим элемент <footer>. Добавим ему атрибут class со значением site-footer. Во-вторых, элементу <ul> добавим атрибут class со значением list.

Одна красная стрелка указывает на добавленный элемент footer, а другая — на атрибут class для элемента ul
Одна красная стрелка указывает на добавленный элемент footer, а другая — на атрибут class для элемента ul

Далее введём в Git Bash команду git stash -p.

Введена команда git stash -p
Введена команда git stash -p

Затем выберем, какое изменение мы хотим отложить — пусть будет первое. Введём букву y (мы рассматривали буквы в одной из прошлых демонстраций) и нажмём Enter.

Красная стрелка указывает на введённую букву y
Красная стрелка указывает на введённую букву y

Теперь решим, что делать со вторым изменением. Мы пока не хотим его откладывать, поэтому введём букву n и нажмём Enter.

Красная стрелка указывает на введённую букву n
Красная стрелка указывает на введённую букву n

Как вы можете заметить, у элемента <ul> исчез атрибут class, и осталось только второе изменение. В Git Bash также видно, что к отложенному изменению добавился точно такой же текст, как и к предыдущему — это плохо, потому что изменения разные.

Второе изменение, то есть элемент <footer>, пока что удалять не нужно — оно нам понадобится для следующего шага.